package com.hsurosy.hsuchain.nft.user.facade;

import com.hsurosy.hsuchain.nft.api.user.response.UserOperatorResponse;
import com.hsurosy.hsuchain.nft.api.user.service.UserManageFacadeService;
import com.hsurosy.hsuchain.nft.user.domain.service.UserService;
import org.apache.dubbo.config.annotation.DubboService;
import org.springframework.beans.factory.annotation.Autowired;

/**
 * 用户管理服务实现
 *
 * @Author Hsu琛君珩
 * @Date 2024-10-05 19:12
 * @Description
 * @Version: v1.0.0
 */
@DubboService(version = "1.0.0")
public class UserManageFacadeServiceImpl implements UserManageFacadeService {

    @Autowired
    private UserService userService;

    /**
     * 冻结用户
     *
     * @param userId 用户 ID
     * @return 返回用户操作响应
     */
    @Override
    public UserOperatorResponse freeze(Long userId) {
        // 调用 UserService 的 freeze 方法，执行用户冻结操作
        return userService.freeze(userId);
    }

    /**
     * 解冻用户
     *
     * @param userId 用户 ID
     * @return 返回用户操作响应
     */
    @Override
    public UserOperatorResponse unfreeze(Long userId) {
        // 调用 UserService 的 unfreeze 方法，执行用户解冻操作
        return userService.unfreeze(userId);
    }
}
